@@ -1,5 +1,8 @@
Revision history for MooseX-Types-Structured
+0.27 28 April 2011
+ - test fixes for new Moose
+
0.26 02 January 2011
- removed version from Test::Fatal as asked by the debian folks
- small documentation updates
@@ -18,15 +18,16 @@ This is free software, licensed under:
The GNU General Public License, Version 1, February 1989
- GNU GENERAL PUBLIC LICENSE
- Version 1, February 1989
+ GNU GENERAL PUBLIC LICENSE
+ Version 1, February 1989
Copyright (C) 1989 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
+ 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
- Preamble
+ Preamble
The license agreements of most software companies try to keep users
at the mercy of those companies. By contrast, our General Public
@@ -67,7 +68,7 @@ authors' reputations.
The precise terms and conditions for copying, distribution and
modification follow.
- GNU GENERAL PUBLIC LICENSE
+ GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any program or other work which
@@ -185,7 +186,7 @@ make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
- NO WARRANTY
+ NO WARRANTY
9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
@@ -207,9 +208,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
- END OF TERMS AND CONDITIONS
+ END OF TERMS AND CONDITIONS
- Appendix: How to Apply These Terms to Your New Programs
+ Appendix: How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to humanity, the best way to achieve this is to make it
@@ -235,8 +236,9 @@ the exclusion of warranty; and each file should have at least the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software Foundation,
- Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA
+
Also add information on how to contact you by electronic and paper mail.
@@ -8,7 +8,7 @@
"Robert Sedlacek <rs@474.at>"
],
"dynamic_config" : 0,
- "generated_by" : "Dist::Zilla version 4.200000, CPAN::Meta::Converter version 2.102400",
+ "generated_by" : "Dist::Zilla version 4.200005, CPAN::Meta::Converter version 2.110930",
"license" : [
"perl_5"
],
@@ -68,98 +68,98 @@
"web" : "http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo/MooseX-Types-Structured.git;a=summary"
}
},
- "version" : "0.26",
+ "version" : "0.27",
"x_Dist_Zilla" : {
"plugins" : [
{
"class" : "Dist::Zilla::Plugin::GatherDir",
"name" : "@FLORA/@Basic/GatherDir",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::PruneCruft",
"name" : "@FLORA/@Basic/PruneCruft",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::ManifestSkip",
"name" : "@FLORA/@Basic/ManifestSkip",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::MetaYAML",
"name" : "@FLORA/@Basic/MetaYAML",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::License",
"name" : "@FLORA/@Basic/License",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::Readme",
"name" : "@FLORA/@Basic/Readme",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::ExtraTests",
"name" : "@FLORA/@Basic/ExtraTests",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::ExecDir",
"name" : "@FLORA/@Basic/ExecDir",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::ShareDir",
"name" : "@FLORA/@Basic/ShareDir",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::MakeMaker",
"name" : "@FLORA/@Basic/MakeMaker",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::Manifest",
"name" : "@FLORA/@Basic/Manifest",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::TestRelease",
"name" : "@FLORA/@Basic/TestRelease",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::ConfirmRelease",
"name" : "@FLORA/@Basic/ConfirmRelease",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::UploadToCPAN",
"name" : "@FLORA/@Basic/UploadToCPAN",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::MetaConfig",
"name" : "@FLORA/MetaConfig",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::MetaJSON",
"name" : "@FLORA/MetaJSON",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::PkgVersion",
"name" : "@FLORA/PkgVersion",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::PodSyntaxTests",
"name" : "@FLORA/PodSyntaxTests",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::NoTabsTests",
@@ -169,17 +169,17 @@
{
"class" : "Dist::Zilla::Plugin::PodCoverageTests",
"name" : "@FLORA/PodCoverageTests",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::MetaResources",
"name" : "@FLORA/MetaResources",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::Authority",
"name" : "@FLORA/Authority",
- "version" : "1.000"
+ "version" : "1.005"
},
{
"class" : "Dist::Zilla::Plugin::EOLTests",
@@ -194,7 +194,7 @@
{
"class" : "Dist::Zilla::Plugin::AutoPrereqs",
"name" : "@FLORA/AutoPrereqs",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::Prereqs",
@@ -205,7 +205,7 @@
}
},
"name" : "Prereqs",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::Prereqs",
@@ -216,27 +216,27 @@
}
},
"name" : "BuildRequires",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":InstallModules",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":TestFiles",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":ExecFiles",
- "version" : "4.200000"
+ "version" : "4.200005"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":ShareFiles",
- "version" : "4.200000"
+ "version" : "4.200005"
}
],
"zilla" : {
@@ -244,7 +244,7 @@
"config" : {
"is_trial" : 0
},
- "version" : "4.200000"
+ "version" : "4.200005"
}
},
"x_authority" : "cpan:JJNAPIORK"
@@ -16,7 +16,7 @@ build_requires:
configure_requires:
ExtUtils::MakeMaker: 6.31
dynamic_config: 0
-generated_by: 'Dist::Zilla version 4.200000, CPAN::Meta::Converter version 2.102400'
+generated_by: 'Dist::Zilla version 4.200005, CPAN::Meta::Converter version 2.110930'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -38,81 +38,81 @@ resources:
bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=MooseX-Types-Structured
homepage: http://search.cpan.org/dist/MooseX-Types-Structured
repository: git://git.moose.perl.org/MooseX-Types-Structured.git
-version: 0.26
+version: 0.27
x_Dist_Zilla:
plugins:
-
class: Dist::Zilla::Plugin::GatherDir
name: '@FLORA/@Basic/GatherDir'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::PruneCruft
name: '@FLORA/@Basic/PruneCruft'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::ManifestSkip
name: '@FLORA/@Basic/ManifestSkip'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::MetaYAML
name: '@FLORA/@Basic/MetaYAML'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::License
name: '@FLORA/@Basic/License'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::Readme
name: '@FLORA/@Basic/Readme'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::ExtraTests
name: '@FLORA/@Basic/ExtraTests'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::ExecDir
name: '@FLORA/@Basic/ExecDir'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::ShareDir
name: '@FLORA/@Basic/ShareDir'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::MakeMaker
name: '@FLORA/@Basic/MakeMaker'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::Manifest
name: '@FLORA/@Basic/Manifest'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::TestRelease
name: '@FLORA/@Basic/TestRelease'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::ConfirmRelease
name: '@FLORA/@Basic/ConfirmRelease'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::UploadToCPAN
name: '@FLORA/@Basic/UploadToCPAN'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::MetaConfig
name: '@FLORA/MetaConfig'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::MetaJSON
name: '@FLORA/MetaJSON'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::PkgVersion
name: '@FLORA/PkgVersion'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::PodSyntaxTests
name: '@FLORA/PodSyntaxTests'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::NoTabsTests
name: '@FLORA/NoTabsTests'
@@ -120,15 +120,15 @@ x_Dist_Zilla:
-
class: Dist::Zilla::Plugin::PodCoverageTests
name: '@FLORA/PodCoverageTests'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::MetaResources
name: '@FLORA/MetaResources'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::Authority
name: '@FLORA/Authority'
- version: 1.000
+ version: 1.005
-
class: Dist::Zilla::Plugin::EOLTests
name: '@FLORA/EOLTests'
@@ -140,7 +140,7 @@ x_Dist_Zilla:
-
class: Dist::Zilla::Plugin::AutoPrereqs
name: '@FLORA/AutoPrereqs'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::Prereqs
config:
@@ -148,7 +148,7 @@ x_Dist_Zilla:
phase: runtime
type: requires
name: Prereqs
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::Prereqs
config:
@@ -156,26 +156,26 @@ x_Dist_Zilla:
phase: build
type: requires
name: BuildRequires
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::FinderCode
name: ':InstallModules'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::FinderCode
name: ':TestFiles'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ExecFiles'
- version: 4.200000
+ version: 4.200005
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ShareFiles'
- version: 4.200000
+ version: 4.200005
zilla:
class: Dist::Zilla::Dist::Builder
config:
is_trial: 0
- version: 4.200000
+ version: 4.200005
x_authority: cpan:JJNAPIORK
@@ -38,7 +38,7 @@ my %WriteMakefileArgs = (
'Sub::Exporter' => '0.982',
'overload' => '0'
},
- 'VERSION' => '0.26',
+ 'VERSION' => '0.27',
'test' => {
'TESTS' => 't/*.t t/regressions/*.t'
}
@@ -1,7 +1,7 @@
This archive contains the distribution MooseX-Types-Structured,
-version 0.26:
+version 0.27:
MooseX::Types::Structured - Structured Type Constraints for Moose
@@ -1,5 +1,5 @@
name = MooseX-Types-Structured
-version = 0.26
+version = 0.27
author = John Napiorkowski <jjnapiork@cpan.org>
author = Florian Ragwitz <rafl@debian.org>
author = Yuval Kogman <nothingmuch@woobling.org>
@@ -1,8 +1,5 @@
package ## Hide from PAUSE
MooseX::Meta::TypeCoercion::Structured::Optional;
-BEGIN {
- $MooseX::Meta::TypeCoercion::Structured::Optional::AUTHORITY = 'cpan:JJNAPIORK';
-}
use Moose;
extends 'Moose::Meta::TypeCoercion';
@@ -1,8 +1,5 @@
package ## Hide from PAUSE
MooseX::Meta::TypeCoercion::Structured;
-BEGIN {
- $MooseX::Meta::TypeCoercion::Structured::AUTHORITY = 'cpan:JJNAPIORK';
-}
# ABSTRACT: MooseX::Meta::TypeCoercion::Structured - Coerce structured type constraints.
use Moose;
@@ -1,8 +1,5 @@
package ## Hide from PAUSE
MooseX::Meta::TypeConstraint::Structured::Optional;
-BEGIN {
- $MooseX::Meta::TypeConstraint::Structured::Optional::AUTHORITY = 'cpan:JJNAPIORK';
-}
use Moose;
use MooseX::Meta::TypeCoercion::Structured::Optional;
@@ -1,8 +1,5 @@
package ## Hide from PAUSE
MooseX::Meta::TypeConstraint::Structured;
-BEGIN {
- $MooseX::Meta::TypeConstraint::Structured::AUTHORITY = 'cpan:JJNAPIORK';
-}
# ABSTRACT: MooseX::Meta::TypeConstraint::Structured - Structured type constraints.
use Moose;
@@ -1,8 +1,5 @@
package ## Hide from PAUSE
MooseX::Types::Structured::MessageStack;
-BEGIN {
- $MooseX::Types::Structured::MessageStack::AUTHORITY = 'cpan:JJNAPIORK';
-}
use Moose;
@@ -1,8 +1,5 @@
package ## Hide from PAUSE
MooseX::Types::Structured::OverflowHandler;
-BEGIN {
- $MooseX::Types::Structured::OverflowHandler::AUTHORITY = 'cpan:JJNAPIORK';
-}
use Moose;
@@ -3,7 +3,7 @@ BEGIN {
$MooseX::Types::Structured::AUTHORITY = 'cpan:JJNAPIORK';
}
BEGIN {
- $MooseX::Types::Structured::VERSION = '0.26';
+ $MooseX::Types::Structured::VERSION = '0.27';
}
# ABSTRACT: MooseX::Types::Structured - Structured Type Constraints for Moose
@@ -11,10 +11,10 @@ my $type = Map[ Int, Num ];
ok($type->assert_valid({ 10 => 10.5 }), "simple Int -> Num mapping");
like( exception { $type->assert_valid({ 10.5 => 10.5 }) },
- qr{value 10\.5}, "non-Int causes rejection on key");
+ qr{value .*10\.5.*}, "non-Int causes rejection on key");
like( exception { $type->assert_valid({ 10 => "ten and a half" }) },
- qr{value ten and a half}, "non-Num value causes rejection on value");
+ qr{value .*ten and a half.*}, "non-Num value causes rejection on value");
ok($type->assert_valid({ }), "empty hashref is a valid mapping of any sort");
@@ -21,19 +21,19 @@ ok !$simple_dict->check({name=>$simple_dict,age=>'hello'}), "simple_dict fails:
## Let's check all the expected validation errors for tuple
like $simple_tuple->validate({a=>1,b=>2}),
- qr/Validation failed for 'simple_tuple' with value { a: 1, b: 2 }/,
+ qr/Validation failed for 'simple_tuple' with value .*{ a: 1, b: 2 }/,
'Wrong basic type';
like $simple_tuple->validate(['a','b']),
- qr/failed for 'simple_tuple' with value \[ "a", "b" \]/,
+ qr/failed for 'simple_tuple' with value .*\[ "a", "b" \]/,
'Correctly failed due to "a" not an Int';
like $simple_tuple->validate([1,$simple_tuple]),
- qr/Validation failed for 'simple_tuple' with value \[ 1, MooseX::Meta::TypeConstraint::Structured/,
+ qr/Validation failed for 'simple_tuple' with value .*\[ 1, MooseX::Meta::TypeConstraint::Structured/,
'Correctly failed due to object not a Str';
like $simple_tuple->validate([1]),
- qr/Validation failed for 'Str' with value NULL/,
+ qr/Validation failed for 'Str' with value .*NULL/,
'Not enought values';
like $simple_tuple->validate([1,'hello','too many']),
@@ -43,19 +43,19 @@ like $simple_tuple->validate([1,'hello','too many']),
## And the same thing for dicts [name=>Str,age=>Int]
like $simple_dict->validate([1,2]),
- qr/ with value \[ 1, 2 \]/,
+ qr/ with value .*\[ 1, 2 \]/,
'Wrong basic type';
-like $simple_dict->validate({name=>'John',age=>'a'}),
- qr/failed for 'Int' with value a/,
+like $simple_dict->validate({name=>'John',age=>'foobar'}),
+ qr/failed for 'Int' with value .*foobar/,
'Correctly failed due to age not an Int';
like $simple_dict->validate({name=>$simple_dict,age=>1}),
- qr/with value { age: 1, name: MooseX:/,
+ qr/with value .*{ age: 1, name: MooseX:/,
'Correctly failed due to object not a Str';
like $simple_dict->validate({name=>'John'}),
- qr/failed for 'Int' with value NULL/,
+ qr/failed for 'Int' with value .*NULL/,
'Not enought values';
like $simple_dict->validate({name=>'Vincent', age=>15,extra=>'morethanIneed'}),
@@ -68,15 +68,15 @@ like $simple_dict->validate({name=>'Vincent', age=>15,extra=>'morethanIneed'}),
my $optional_dict = subtype 'optional_dict', as Dict[name=>Str,age=>Optional[Int]];
like $optional_tuple->validate({a=>1,b=>2}),
- qr/Validation failed for 'optional_tuple' with value { a: 1, b: 2 }/,
+ qr/Validation failed for 'optional_tuple' with value .*{ a: 1, b: 2 }/,
'Wrong basic type';
-like $optional_tuple->validate(['a','b']),
- qr/failed for 'Int' with value a/,
- 'Correctly failed due to "a" not an Int';
+like $optional_tuple->validate(['baz','b']),
+ qr/failed for 'Int' with value .*baz/,
+ 'Correctly failed due to "baz" not an Int';
like $optional_tuple->validate([1,$simple_tuple]),
- qr/failed for 'Optional\[Str\]' with value MooseX/,
+ qr/failed for 'Optional\[Str\]' with value .*MooseX/,
'Correctly failed due to object not a Str';
like $optional_tuple->validate([1,'hello','too many']),
@@ -84,15 +84,15 @@ like $optional_tuple->validate([1,'hello','too many']),
'Too Many values';
like $optional_dict->validate([1,2]),
- qr/ with value \[ 1, 2 \]/,
+ qr/ with value .*\[ 1, 2 \]/,
'Wrong basic type';
-like $optional_dict->validate({name=>'John',age=>'a'}),
- qr/Validation failed for 'Optional\[Int\]' with value a/,
+like $optional_dict->validate({name=>'John',age=>'quux'}),
+ qr/Validation failed for 'Optional\[Int\]' with value .*quux/,
'Correctly failed due to age not an Int';
like $optional_dict->validate({name=>$simple_dict,age=>1}),
- qr/with value { age: 1, name: MooseX:/,
+ qr/with value .*{ age: 1, name: MooseX:/,
'Correctly failed due to object not a Str';
like $optional_dict->validate({name=>'Vincent', age=>15,extra=>'morethanIneed'}),
@@ -122,11 +122,11 @@ ok $deep_tuple->check([1,{a=>2},{name=>'Vincent',age=>15}]),
}
like $simple_tuple->validate(["aaa","bbb"]),
- qr/'Int' with value aaa/,
+ qr/'Int' with value .*aaa/,
'correct deeper error';
like $deep_tuple->validate([1,{a=>2},{name=>'Vincent1',age=>'Hello1'}]),
- qr/'Int' with value Hello1/,
+ qr/'Int' with value .*Hello1/,
'correct deeper error';
## Success Tests...